package com.brainshare.system.service;

import java.util.List;

import com.brainshare.system.domain.param.BuriedPointParam;
import com.brainshare.system.domain.SysBuriedPoint;
import com.brainshare.system.domain.query.BuriedPointQuery;
import com.brainshare.system.domain.vo.SysBuriedPointVO;

import javax.servlet.http.HttpServletRequest;

/**
 * 埋点记录Service接口
 * 
 * @author ruoyi
 * @date 2023-08-22
 */
public interface ISysBuriedPointService 
{
    /**
     * 查询埋点记录
     * 
     * @param id 埋点记录主键
     * @return 埋点记录
     */
    public SysBuriedPoint selectSysBuriedPointById(Long id);


    /**
     * 查询埋点记录明细
     * @param buriedPointQuery
     * @return
     */
    List<SysBuriedPoint> getBuriedPointList(BuriedPointQuery buriedPointQuery);

    /**
     * 转化埋点明细
     * @param sysBuriedPointList
     * @return
     */
    List<SysBuriedPointVO> getSysBuriedPointVO(List<SysBuriedPoint> sysBuriedPointList);

    /**
     * 查询埋点记录列表
     * 
     * @param sysBuriedPoint 埋点记录
     * @return 埋点记录集合
     */
    public List<SysBuriedPoint> selectSysBuriedPointList(SysBuriedPoint sysBuriedPoint);

    /**
     * 新增埋点记录
     * 
     * @param sysBuriedPoint 埋点记录
     * @return 结果
     */
    public int insertSysBuriedPoint(SysBuriedPoint sysBuriedPoint);


    /**
     * 新增埋点记录
     *
     * @param buriedPointParam 埋点记录
     * @return 结果
     */
    Integer addBuriedPoint(HttpServletRequest request, BuriedPointParam buriedPointParam);

    /**
     * 修改埋点记录
     * 
     * @param sysBuriedPoint 埋点记录
     * @return 结果
     */
    public int updateSysBuriedPoint(SysBuriedPoint sysBuriedPoint);

    /**
     * 批量删除埋点记录
     * 
     * @param ids 需要删除的埋点记录主键集合
     * @return 结果
     */
    public int deleteSysBuriedPointByIds(Long[] ids);

    /**
     * 删除埋点记录信息
     * 
     * @param id 埋点记录主键
     * @return 结果
     */
    public int deleteSysBuriedPointById(Long id);
}
